package com.yunwaikeji.gy_tool_library.interface1;

import android.view.View;

import com.yunwaikeji.gy_tool_library.info.GYBaseInfo;

public interface GYViewSetSetInterface<V, VS> extends GYBaseInfo {
    VS setSizePx(int widthPx, int heightPx, float weight);

    VS setSizeDp(int widthDp, int heightDp, float weight);

    VS setSizePx(int widthPx, int heightPx);

    VS setSizeDp(int widthDp, int heightDp);

    VS setWidthPx(int widthPx);

    VS setWidthDp(int widthDp);

    VS setHeightPx(int heightPx);

    VS setHeightDp(int heightDp);

    VS setWeight(float weight);

    float getWeight();

    int getWidthPx();

    int getHeightPx();

    VS setMarginPx(int leftPx, int topPx, int rightPx, int bottomPx);

    VS setMarginDp(int leftDp, int topDp, int rightDp, int bottomDp);

    VS setPaddingPx(int leftPx, int topPx, int rightPx, int bottomPx);

    VS setPaddingDp(int leftDp, int topDp, int rightDp, int bottomDp);

    VS setVisibility(int visibility);

    VS setClickable(boolean clickable);

    VS setOnClickListener(View.OnClickListener onClickListener);

    VS setOnLongClickListener(View.OnLongClickListener onLongClickListener);

    VS setOnContextClickListener(View.OnContextClickListener onContextClickListener);

    V toView();

    VS toViewSet();
}
